<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>ESP8266 ILI9341 display support code with printf sources, wire-frame viewer and custom fonts: printf/mathio.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">ESP8266 ILI9341 display support code with printf sources, wire-frame viewer and custom fonts
   &#160;<span id="projectnumber">1.0</span>
   </div>
   <div id="projectbrief">ESP8266ILI9341DisplayProject</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_012ec66c173e5cefcc171f0e37014eef.html">printf</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">mathio.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Math IO functions, and verious conversion code with floating point support.  
<a href="#details">More...</a></p>

<p><a href="mathio_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__printf__t.html">_printf_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">undefine any potential macro version of these functions  <a href="struct__printf__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unionf__t.html">f_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">format specifier flags  <a href="unionf__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ad0fe97585b8891f5e4f2b9a6426330a4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a></td></tr>
<tr class="separator:ad0fe97585b8891f5e4f2b9a6426330a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9306b0c3083933632aca02ebb1fe14d5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a9306b0c3083933632aca02ebb1fe14d5">__memx</a></td></tr>
<tr class="separator:a9306b0c3083933632aca02ebb1fe14d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a399da2caab82ec1bb3d5a8fbc5306768"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a399da2caab82ec1bb3d5a8fbc5306768">WEAK_ATR</a>&#160;&#160;&#160;<a class="el" href="user__task_8c.html#ade20ba3eb51f42d2b2deb917303c9a5e">__attribute__</a>((weak))</td></tr>
<tr class="separator:a399da2caab82ec1bb3d5a8fbc5306768"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a1efdee46bf8e5af45e76e461e8db9c09"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct__printf__t.html">_printf_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a1efdee46bf8e5af45e76e461e8db9c09">printf_t</a></td></tr>
<tr class="memdesc:a1efdee46bf8e5af45e76e461e8db9c09"><td class="mdescLeft">&#160;</td><td class="mdescRight">undefine any potential macro version of these functions  <a href="#a1efdee46bf8e5af45e76e461e8db9c09">More...</a><br /></td></tr>
<tr class="separator:a1efdee46bf8e5af45e76e461e8db9c09"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:af4de2514b7778805db3815e8dd6cf09a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#af4de2514b7778805db3815e8dd6cf09a">putchar</a> (int c)</td></tr>
<tr class="memdesc:af4de2514b7778805db3815e8dd6cf09a"><td class="mdescLeft">&#160;</td><td class="mdescRight">put a character to stdout See <a class="el" href="posix_8c.html#ab814cff71bcbcc3a72a6c399e5084573" title="Device open functions. ">fdevopen()</a> sets stream-&gt;put get for TTY devices  <a href="#af4de2514b7778805db3815e8dd6cf09a">More...</a><br /></td></tr>
<tr class="separator:af4de2514b7778805db3815e8dd6cf09a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c0b521d598596dde4e31d56f672ad76"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a8c0b521d598596dde4e31d56f672ad76">atodigit</a> (int c, int radix)</td></tr>
<tr class="memdesc:a8c0b521d598596dde4e31d56f672ad76"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert ASCII character to radix based digit , or -1.  <a href="#a8c0b521d598596dde4e31d56f672ad76">More...</a><br /></td></tr>
<tr class="separator:a8c0b521d598596dde4e31d56f672ad76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65e529a87a8bcaf0b2cb9b6edc3a8fde"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a65e529a87a8bcaf0b2cb9b6edc3a8fde">atoh</a> (const char *p)</td></tr>
<tr class="memdesc:a65e529a87a8bcaf0b2cb9b6edc3a8fde"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert ASCII hex string to long integer.  <a href="#a65e529a87a8bcaf0b2cb9b6edc3a8fde">More...</a><br /></td></tr>
<tr class="separator:a65e529a87a8bcaf0b2cb9b6edc3a8fde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5fb184d7bd50561c60bf64b7cda0eb62"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a5fb184d7bd50561c60bf64b7cda0eb62">aton</a> (char *str, int base)</td></tr>
<tr class="memdesc:a5fb184d7bd50561c60bf64b7cda0eb62"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert ASCII string to number in a given base.  <a href="#a5fb184d7bd50561c60bf64b7cda0eb62">More...</a><br /></td></tr>
<tr class="separator:a5fb184d7bd50561c60bf64b7cda0eb62"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee46e805a6a25105661e6486a419fdc3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#aee46e805a6a25105661e6486a419fdc3">mul10str</a> (<a class="el" href="send_8c.html#aba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> *str, int size)</td></tr>
<tr class="memdesc:aee46e805a6a25105661e6486a419fdc3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fast multiply number of any size by 10.  <a href="#aee46e805a6a25105661e6486a419fdc3">More...</a><br /></td></tr>
<tr class="separator:aee46e805a6a25105661e6486a419fdc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7a25f0631dd53c026fd8636e8bcb42e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#ae7a25f0631dd53c026fd8636e8bcb42e">strtol</a> (const char *nptr, char **endptr, int base)</td></tr>
<tr class="memdesc:ae7a25f0631dd53c026fd8636e8bcb42e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert ASCII string to number in a given base.  <a href="#ae7a25f0631dd53c026fd8636e8bcb42e">More...</a><br /></td></tr>
<tr class="separator:ae7a25f0631dd53c026fd8636e8bcb42e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00a26430103adfe060136c98afc39cab"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> long long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a00a26430103adfe060136c98afc39cab">strtoll</a> (const char *nptr, char **endptr, int base)</td></tr>
<tr class="memdesc:a00a26430103adfe060136c98afc39cab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert ASCII string to number in a given base.  <a href="#a00a26430103adfe060136c98afc39cab">More...</a><br /></td></tr>
<tr class="separator:a00a26430103adfe060136c98afc39cab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae640e0202e5f4904efa121a07af97c5e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#ae640e0202e5f4904efa121a07af97c5e">atoi</a> (const char *str)</td></tr>
<tr class="memdesc:ae640e0202e5f4904efa121a07af97c5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert ASCII string to number in base 10.  <a href="#ae640e0202e5f4904efa121a07af97c5e">More...</a><br /></td></tr>
<tr class="separator:ae640e0202e5f4904efa121a07af97c5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae952cb1ae6aec6b2b6c02ae67e9ea87b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#ae952cb1ae6aec6b2b6c02ae67e9ea87b">atol</a> (const char *str)</td></tr>
<tr class="memdesc:ae952cb1ae6aec6b2b6c02ae67e9ea87b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert ASCII string to number in base 10.  <a href="#ae952cb1ae6aec6b2b6c02ae67e9ea87b">More...</a><br /></td></tr>
<tr class="separator:ae952cb1ae6aec6b2b6c02ae67e9ea87b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29526ba629435aeaee7e3201242a9234"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a29526ba629435aeaee7e3201242a9234">iexp</a> (double num, int exp)</td></tr>
<tr class="separator:a29526ba629435aeaee7e3201242a9234"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52658cd34151fad98aa1294a2acafa02"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a52658cd34151fad98aa1294a2acafa02">scale10</a> (double num, int *exp)</td></tr>
<tr class="separator:a52658cd34151fad98aa1294a2acafa02"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a581d4eb5e2c88dd6a011ed595bf413f8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a581d4eb5e2c88dd6a011ed595bf413f8">strtod</a> (const char *nptr, char **endptr)</td></tr>
<tr class="separator:a581d4eb5e2c88dd6a011ed595bf413f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e733f84057711222341263fe2f0bd15"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a7e733f84057711222341263fe2f0bd15">atof</a> (const char *str)</td></tr>
<tr class="separator:a7e733f84057711222341263fe2f0bd15"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a895ea3a2f9901e4c962806cc15271339"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> <a class="el" href="cpu_8h.html#aea0c7eab1ce1eebb4e879ef4e23c16ee">size_t</a> <a class="el" href="mmc__hal_8h.html#a399da2caab82ec1bb3d5a8fbc5306768">WEAK_ATR</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a895ea3a2f9901e4c962806cc15271339">strlen</a> (const char *str)</td></tr>
<tr class="memdesc:a895ea3a2f9901e4c962806cc15271339"><td class="mdescLeft">&#160;</td><td class="mdescRight">String Length.  <a href="#a895ea3a2f9901e4c962806cc15271339">More...</a><br /></td></tr>
<tr class="separator:a895ea3a2f9901e4c962806cc15271339"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c33a3f5b4322e705d3403f63d55b0a1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int <a class="el" href="mmc__hal_8h.html#a399da2caab82ec1bb3d5a8fbc5306768">WEAK_ATR</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a8c33a3f5b4322e705d3403f63d55b0a1">isdigit</a> (int c)</td></tr>
<tr class="memdesc:a8c33a3f5b4322e705d3403f63d55b0a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">test if a character is a digit  <a href="#a8c33a3f5b4322e705d3403f63d55b0a1">More...</a><br /></td></tr>
<tr class="separator:a8c33a3f5b4322e705d3403f63d55b0a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00b9d97be21e4f3f5df1019a803c05a6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void <a class="el" href="mmc__hal_8h.html#a399da2caab82ec1bb3d5a8fbc5306768">WEAK_ATR</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a00b9d97be21e4f3f5df1019a803c05a6">reverse</a> (char *str)</td></tr>
<tr class="memdesc:a00b9d97be21e4f3f5df1019a803c05a6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reverse a string in place Example: abcdef -&gt; fedcba.  <a href="#a00b9d97be21e4f3f5df1019a803c05a6">More...</a><br /></td></tr>
<tr class="separator:a00b9d97be21e4f3f5df1019a803c05a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25ac5a1dbdfa1d06d55448cd7b665d1d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void <a class="el" href="mmc__hal_8h.html#a399da2caab82ec1bb3d5a8fbc5306768">WEAK_ATR</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a25ac5a1dbdfa1d06d55448cd7b665d1d">strupper</a> (char *str)</td></tr>
<tr class="memdesc:a25ac5a1dbdfa1d06d55448cd7b665d1d"><td class="mdescLeft">&#160;</td><td class="mdescRight">UPPERCASE a string.  <a href="#a25ac5a1dbdfa1d06d55448cd7b665d1d">More...</a><br /></td></tr>
<tr class="separator:a25ac5a1dbdfa1d06d55448cd7b665d1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa95ef42dcc41a90255c084e0e1a9bcde"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#aa95ef42dcc41a90255c084e0e1a9bcde">bin2num</a> (<a class="el" href="send_8c.html#aba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> *str, int strmax, int nummin, int base, <a class="el" href="send_8c.html#aba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> *nump, int numsize, int sign_ch)</td></tr>
<tr class="memdesc:aa95ef42dcc41a90255c084e0e1a9bcde"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert an unsigned number (numsize bytes in size) to ASCII in specified base Notes: No limit except available memory on number size.  <a href="#aa95ef42dcc41a90255c084e0e1a9bcde">More...</a><br /></td></tr>
<tr class="separator:aa95ef42dcc41a90255c084e0e1a9bcde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab10e941ecf6d7512649e377e97d28fac"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#ab10e941ecf6d7512649e377e97d28fac">pch_init</a> (char *str, int max)</td></tr>
<tr class="memdesc:ab10e941ecf6d7512649e377e97d28fac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize character buffer with limits.  <a href="#ab10e941ecf6d7512649e377e97d28fac">More...</a><br /></td></tr>
<tr class="separator:ab10e941ecf6d7512649e377e97d28fac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab454b0d961c8dc93406cc75379c8a1f5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#ab454b0d961c8dc93406cc75379c8a1f5">pch</a> (char ch)</td></tr>
<tr class="memdesc:ab454b0d961c8dc93406cc75379c8a1f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Put character in buffer with limits.  <a href="#ab454b0d961c8dc93406cc75379c8a1f5">More...</a><br /></td></tr>
<tr class="separator:ab454b0d961c8dc93406cc75379c8a1f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a569e22c563b1ffd2dd24e34362a7c28f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a569e22c563b1ffd2dd24e34362a7c28f">pch_ind</a> (void)</td></tr>
<tr class="memdesc:a569e22c563b1ffd2dd24e34362a7c28f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return current index of character buffer with limits.  <a href="#a569e22c563b1ffd2dd24e34362a7c28f">More...</a><br /></td></tr>
<tr class="separator:a569e22c563b1ffd2dd24e34362a7c28f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5769700e455a65d011d96917f3f5ba36"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a5769700e455a65d011d96917f3f5ba36">pch_max_ind</a> (void)</td></tr>
<tr class="memdesc:a5769700e455a65d011d96917f3f5ba36"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return maximum valid index for character buffer.  <a href="#a5769700e455a65d011d96917f3f5ba36">More...</a><br /></td></tr>
<tr class="separator:a5769700e455a65d011d96917f3f5ba36"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c08c55e823a7532f2344a77ef296b4e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a9c08c55e823a7532f2344a77ef296b4e">print_flags</a> (<a class="el" href="unionf__t.html">f_t</a> f)</td></tr>
<tr class="memdesc:a9c08c55e823a7532f2344a77ef296b4e"><td class="mdescLeft">&#160;</td><td class="mdescRight">print flags set in t_t structure  <a href="#a9c08c55e823a7532f2344a77ef296b4e">More...</a><br /></td></tr>
<tr class="separator:a9c08c55e823a7532f2344a77ef296b4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab538bcf34e0347b5c0329666ab58d0e2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#ab538bcf34e0347b5c0329666ab58d0e2">p_ntoa</a> (<a class="el" href="send_8c.html#aba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> *nump, int numsize, char *str, int strmax, int radix, int width, int prec, <a class="el" href="unionf__t.html">f_t</a> f)</td></tr>
<tr class="memdesc:ab538bcf34e0347b5c0329666ab58d0e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert number an base 2 .. 16 to ASCII with optional sign Notes: 1) Numbers can be any number of digits long - limited only by memory available To print negative numbers convert to positive before calling this function and set f.b.neg 2) Warning: as with printf width and prec are only minimum sizes - results can be bigger We assume all numbers are positive:  <a href="#ab538bcf34e0347b5c0329666ab58d0e2">More...</a><br /></td></tr>
<tr class="separator:ab538bcf34e0347b5c0329666ab58d0e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af35d59e537ce4cc2895dc4e00ada5977"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#af35d59e537ce4cc2895dc4e00ada5977">p_ftoa</a> (double val, char *str, int max, int width, int prec, <a class="el" href="unionf__t.html">f_t</a> f)</td></tr>
<tr class="separator:af35d59e537ce4cc2895dc4e00ada5977"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3e3ca7828e11c31adc999b44d2f2bb1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#ae3e3ca7828e11c31adc999b44d2f2bb1">p_etoa</a> (double val, char *str, int max, int width, int prec, <a class="el" href="unionf__t.html">f_t</a> f)</td></tr>
<tr class="separator:ae3e3ca7828e11c31adc999b44d2f2bb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab713fa5c01f315bdf67d18a6dbcb4ff5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#ab713fa5c01f315bdf67d18a6dbcb4ff5">_puts_pad</a> (<a class="el" href="mathio_8h.html#a1efdee46bf8e5af45e76e461e8db9c09">printf_t</a> *fn, char *s, int width, int count, int left)</td></tr>
<tr class="separator:ab713fa5c01f315bdf67d18a6dbcb4ff5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c2762f15e2ae4dea9b52ee9e3532372"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a1c2762f15e2ae4dea9b52ee9e3532372">_printf_fn</a> (<a class="el" href="mathio_8h.html#a1efdee46bf8e5af45e76e461e8db9c09">printf_t</a> *fn, <a class="el" href="mathio_8h.html#a9306b0c3083933632aca02ebb1fe14d5">__memx</a> const char *fmt, va_list va)</td></tr>
<tr class="memdesc:a1c2762f15e2ae4dea9b52ee9e3532372"><td class="mdescLeft">&#160;</td><td class="mdescRight">vsnprintf function  <a href="#a1c2762f15e2ae4dea9b52ee9e3532372">More...</a><br /></td></tr>
<tr class="separator:a1c2762f15e2ae4dea9b52ee9e3532372"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b6f7fa030ba96220b734d45d737805a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a9b6f7fa030ba96220b734d45d737805a">_putc_buffer_fn</a> (struct <a class="el" href="struct__printf__t.html">_printf_t</a> *p, char ch)</td></tr>
<tr class="memdesc:a9b6f7fa030ba96220b734d45d737805a"><td class="mdescLeft">&#160;</td><td class="mdescRight">_putc_buffer_fn - character output to a string buffer Used by snprintf and vsnprintf You can make _printf_fn call this helper for each character  <a href="#a9b6f7fa030ba96220b734d45d737805a">More...</a><br /></td></tr>
<tr class="separator:a9b6f7fa030ba96220b734d45d737805a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a6349b4ca3388a0cb82fc3d1d85a6b5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a7a6349b4ca3388a0cb82fc3d1d85a6b5">vsnprintf</a> (char *str, <a class="el" href="cpu_8h.html#aea0c7eab1ce1eebb4e879ef4e23c16ee">size_t</a> size, const char *format, va_list va)</td></tr>
<tr class="memdesc:a7a6349b4ca3388a0cb82fc3d1d85a6b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">vsnprintf function  <a href="#a7a6349b4ca3388a0cb82fc3d1d85a6b5">More...</a><br /></td></tr>
<tr class="separator:a7a6349b4ca3388a0cb82fc3d1d85a6b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a278630a290b34d009b2e3ad7bf1fc996"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a278630a290b34d009b2e3ad7bf1fc996">snprintf</a> (char *str, <a class="el" href="cpu_8h.html#aea0c7eab1ce1eebb4e879ef4e23c16ee">size_t</a> size, const char *format,...)</td></tr>
<tr class="memdesc:a278630a290b34d009b2e3ad7bf1fc996"><td class="mdescLeft">&#160;</td><td class="mdescRight">snprintf function  <a href="#a278630a290b34d009b2e3ad7bf1fc996">More...</a><br /></td></tr>
<tr class="separator:a278630a290b34d009b2e3ad7bf1fc996"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6078f8da2d30ecaef99e0c2d250c0c8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#ad6078f8da2d30ecaef99e0c2d250c0c8">printf</a> (const char *format,...)</td></tr>
<tr class="separator:ad6078f8da2d30ecaef99e0c2d250c0c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79c7a2e931845b0fb6b2fa6d63939de4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mathio_8h.html#a79c7a2e931845b0fb6b2fa6d63939de4">sscanf</a> (const char *strp, const char *fmt,...)</td></tr>
<tr class="separator:a79c7a2e931845b0fb6b2fa6d63939de4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Math IO functions, and verious conversion code with floating point support. </p>
<dl class="section user"><dt>Copyright &copy; 2014-2017 Mike Gore, All rights reserved. GPL License</dt><dd></dd></dl>
<dl class="section see"><dt>See also</dt><dd><a href="http://github.com/magore/hp85disk">http://github.com/magore/hp85disk</a> </dd>
<dd>
<a href="http://github.com/magore/hp85disk/COPYRIGHT.md">http://github.com/magore/hp85disk/COPYRIGHT.md</a> for specific Copyright details</dd></dl>
<dl class="section user"><dt>You are free to use this code under the terms of GPL</dt><dd>please retain a copy of this notice in any code you use it in.</dd></dl>
<p>This is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.</p>
<p>This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.</p>
<p>You should have received a copy of the GNU General Public License along with this program. If not, see <a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>. </p>

<p>Definition in file <a class="el" href="mathio_8h_source.html">mathio.h</a>.</p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="a9306b0c3083933632aca02ebb1fe14d5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __memx</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mathio_8h_source.html#l00038">38</a> of file <a class="el" href="mathio_8h_source.html">mathio.h</a>.</p>

<p>Referenced by <a class="el" href="printf_8c_source.html#l00741">_printf_fn()</a>, and <a class="el" href="printf_8c_source.html#l01164">snprintf()</a>.</p>

</div>
</div>
<a class="anchor" id="ad0fe97585b8891f5e4f2b9a6426330a4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MEMSPACE</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mathio_8h_source.html#l00033">33</a> of file <a class="el" href="mathio_8h_source.html">mathio.h</a>.</p>

</div>
</div>
<a class="anchor" id="a399da2caab82ec1bb3d5a8fbc5306768"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WEAK_ATR&#160;&#160;&#160;<a class="el" href="user__task_8c.html#ade20ba3eb51f42d2b2deb917303c9a5e">__attribute__</a>((weak))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mathio_8h_source.html#l00045">45</a> of file <a class="el" href="mathio_8h_source.html">mathio.h</a>.</p>

</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a class="anchor" id="a1efdee46bf8e5af45e76e461e8db9c09"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="struct__printf__t.html">_printf_t</a>  <a class="el" href="mathio_8h.html#a1efdee46bf8e5af45e76e461e8db9c09">printf_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>undefine any potential macro version of these functions </p>
<p>We let printf use user defined I/O functions </p>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a1c2762f15e2ae4dea9b52ee9e3532372"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void _printf_fn </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="mathio_8h.html#a1efdee46bf8e5af45e76e461e8db9c09">printf_t</a> *&#160;</td>
          <td class="paramname"><em>fn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="mathio_8h.html#a9306b0c3083933632aca02ebb1fe14d5">__memx</a> const char *&#160;</td>
          <td class="paramname"><em>fmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">va_list&#160;</td>
          <td class="paramname"><em>va</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>vsnprintf function </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">fn</td><td>output character function pointer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">fmt</td><td>printf forat string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">va</td><td>va_list arguments </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>size of string </dd></dl>
<p>Calling Variadic Functions</p><ul>
<li>exceprt from <a href="https://www.gnu.org/software/libc/manual/html_node/Calling-Variadics.html">https://www.gnu.org/software/libc/manual/html_node/Calling-Variadics.html</a> Since the prototype doesn’t specify types for optional arguments, in a call to a variadic function the default argument promotions are performed on the optional argument values. This means the objects of type char or short int (whether signed or not) are promoted to either int or unsigned int, as appropriate; and that objects of type float are promoted to type double. So, if the caller passes a char as an optional argument, it is promoted to an int, and the function can access it with va_arg (ap, int).</li>
</ul>

<p>Definition at line <a class="el" href="printf_8c_source.html#l00741">741</a> of file <a class="el" href="printf_8c_source.html">printf.c</a>.</p>

<p>Referenced by <a class="el" href="posix_8c_source.html#l02484">fprintf()</a>, <a class="el" href="printf_8c_source.html#l01164">snprintf()</a>, <a class="el" href="tft__printf_8c_source.html#l00052">tft_printf()</a>, <a class="el" href="debug_8c_source.html#l00054">uart0_printf()</a>, <a class="el" href="printf_8c_source.html#l01135">vsnprintf()</a>, and <a class="el" href="web_8c_source.html#l00808">vsock_printf()</a>.</p>

</div>
</div>
<a class="anchor" id="a9b6f7fa030ba96220b734d45d737805a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void _putc_buffer_fn </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="struct__printf__t.html">_printf_t</a> *&#160;</td>
          <td class="paramname"><em>p</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char&#160;</td>
          <td class="paramname"><em>ch</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>_putc_buffer_fn - character output to a string buffer Used by snprintf and vsnprintf You can make _printf_fn call this helper for each character </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">*p</td><td>structure with pointers and buffer to be written to </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">ch</td><td>character to place in buffer </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>

<p>Definition at line <a class="el" href="printf_8c_source.html#l01103">1103</a> of file <a class="el" href="printf_8c_source.html">printf.c</a>.</p>

<p>Referenced by <a class="el" href="printf_8c_source.html#l01164">snprintf()</a>, and <a class="el" href="printf_8c_source.html#l01135">vsnprintf()</a>.</p>

</div>
</div>
<a class="anchor" id="ab713fa5c01f315bdf67d18a6dbcb4ff5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void _puts_pad </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="mathio_8h.html#a1efdee46bf8e5af45e76e461e8db9c09">printf_t</a> *&#160;</td>
          <td class="paramname"><em>fn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>width</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>left</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="printf_8c_source.html#l00683">683</a> of file <a class="el" href="printf_8c_source.html">printf.c</a>.</p>

<p>Referenced by <a class="el" href="printf_8c_source.html#l00741">_printf_fn()</a>.</p>

</div>
</div>
<a class="anchor" id="a8c0b521d598596dde4e31d56f672ad76"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int atodigit </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>c</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>radix</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convert ASCII character to radix based digit , or -1. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">c</td><td>character </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">radix</td><td>radix </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>radix based digit , or -1 </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="mathio_8c.html#ae7a25f0631dd53c026fd8636e8bcb42e" title="Convert ASCII string to number in a given base. ">strtol</a> </dd></dl>

<p>Definition at line <a class="el" href="mathio_8c_source.html#l00058">58</a> of file <a class="el" href="mathio_8c_source.html">mathio.c</a>.</p>

<p>Referenced by <a class="el" href="web_8c_source.html#l01116">process_args()</a>, <a class="el" href="mathio_8c_source.html#l00136">strtol()</a>, and <a class="el" href="mathio_8c_source.html#l00183">strtoll()</a>.</p>

</div>
</div>
<a class="anchor" id="a7e733f84057711222341263fe2f0bd15"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> double atof </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>str</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="mathio_8c_source.html#l00295">atol()</a>.</p>

</div>
</div>
<a class="anchor" id="a65e529a87a8bcaf0b2cb9b6edc3a8fde"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> long atoh </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>p</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convert ASCII hex string to long integer. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">p</td><td>String to convert.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>long integer result. </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="mathio_8c.html#ae7a25f0631dd53c026fd8636e8bcb42e" title="Convert ASCII string to number in a given base. ">strtol()</a> for return overflow and underflow results. </dd></dl>

<p>Definition at line <a class="el" href="mathio_8c_source.html#l00079">79</a> of file <a class="el" href="mathio_8c_source.html">mathio.c</a>.</p>

</div>
</div>
<a class="anchor" id="ae640e0202e5f4904efa121a07af97c5e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int atoi </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>str</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convert ASCII string to number in base 10. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">str</td><td>string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>int value </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="mathio_8c.html#ae7a25f0631dd53c026fd8636e8bcb42e" title="Convert ASCII string to number in a given base. ">strtol</a> </dd></dl>

<p>Definition at line <a class="el" href="mathio_8c_source.html#l00281">281</a> of file <a class="el" href="mathio_8c_source.html">mathio.c</a>.</p>

</div>
</div>
<a class="anchor" id="ae952cb1ae6aec6b2b6c02ae67e9ea87b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> long atol </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>str</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convert ASCII string to number in base 10. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">str</td><td>string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>long value </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="mathio_8c.html#ae7a25f0631dd53c026fd8636e8bcb42e" title="Convert ASCII string to number in a given base. ">strtol</a> </dd></dl>

<p>Definition at line <a class="el" href="mathio_8c_source.html#l00295">295</a> of file <a class="el" href="mathio_8c_source.html">mathio.c</a>.</p>

<p>Referenced by <a class="el" href="fatfs__tests_8c_source.html#l00101">fatfs_tests()</a>.</p>

</div>
</div>
<a class="anchor" id="a5fb184d7bd50561c60bf64b7cda0eb62"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> long aton </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>base</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convert ASCII string to number in a given base. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">str</td><td>string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">base</td><td>radix </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>long value </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="mathio_8c.html#ae7a25f0631dd53c026fd8636e8bcb42e" title="Convert ASCII string to number in a given base. ">strtol</a> </dd></dl>

<p>Definition at line <a class="el" href="mathio_8c_source.html#l00093">93</a> of file <a class="el" href="mathio_8c_source.html">mathio.c</a>.</p>

</div>
</div>
<a class="anchor" id="aa95ef42dcc41a90255c084e0e1a9bcde"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int bin2num </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="send_8c.html#aba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>strmax</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nummin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="send_8c.html#aba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> *&#160;</td>
          <td class="paramname"><em>nump</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numsize</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>sign_ch</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convert an unsigned number (numsize bytes in size) to ASCII in specified base Notes: No limit except available memory on number size. </p>
<ul>
<li>Does not use divide or of multiply instructions - great on 8bit CPU's How it works: Say you have a table of powers of 2 in a given base base</li>
<li>To get the result add each table entry, in the base, that corresponds to each 1 bit in the binary number.</li>
<li>Now instead of a table we can start with 1 and multiple by 2 contraining each digit into the base we want - this is the same as using the table except we build it on the fly <dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">str</td><td>ASCII number string result </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">strmax</td><td>maximum size of str in bytes </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">nummin</td><td>minimum number of digits to display </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">*nump</td><td>Pointer to binary number </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">numsize</td><td>size of binary number in bytes </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">sign_ch</td><td>sign of binary number return converted number string numsize in bytes </td></tr>
  </table>
  </dd>
</dl>
</li>
</ul>

<p>Definition at line <a class="el" href="printf_8c_source.html#l00139">139</a> of file <a class="el" href="printf_8c_source.html">printf.c</a>.</p>

<p>Referenced by <a class="el" href="printf_8c_source.html#l00314">p_ntoa()</a>.</p>

</div>
</div>
<a class="anchor" id="a29526ba629435aeaee7e3201242a9234"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> double iexp </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>num</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>exp</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="mathio_8c_source.html#l00295">atol()</a>.</p>

</div>
</div>
<a class="anchor" id="a8c33a3f5b4322e705d3403f63d55b0a1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int <a class="el" href="mmc__hal_8h.html#a399da2caab82ec1bb3d5a8fbc5306768">WEAK_ATR</a> isdigit </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>c</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>test if a character is a digit </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">c</td><td>character </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true or false </dd></dl>

<p>Definition at line <a class="el" href="stringsup_8c_source.html#l00048">48</a> of file <a class="el" href="stringsup_8c_source.html">stringsup.c</a>.</p>

<p>Referenced by <a class="el" href="printf_8c_source.html#l00741">_printf_fn()</a>, and <a class="el" href="mathio_8c_source.html#l00295">atol()</a>.</p>

</div>
</div>
<a class="anchor" id="aee46e805a6a25105661e6486a419fdc3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int mul10str </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="send_8c.html#aba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Fast multiply number of any size by 10. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">str</td><td>string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>string size </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>non-zero on overflow , 0 if ok </dd></dl>

<p>Definition at line <a class="el" href="mathio_8c_source.html#l00108">108</a> of file <a class="el" href="mathio_8c_source.html">mathio.c</a>.</p>

</div>
</div>
<a class="anchor" id="ae3e3ca7828e11c31adc999b44d2f2bb1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int p_etoa </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>val</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>max</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>width</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>prec</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="unionf__t.html">f_t</a>&#160;</td>
          <td class="paramname"><em>f</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="printf_8c_source.html#l00741">_printf_fn()</a>, and <a class="el" href="printf_8c_source.html#l00314">p_ntoa()</a>.</p>

</div>
</div>
<a class="anchor" id="af35d59e537ce4cc2895dc4e00ada5977"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int p_ftoa </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>val</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>max</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>width</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>prec</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="unionf__t.html">f_t</a>&#160;</td>
          <td class="paramname"><em>f</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="printf_8c_source.html#l00741">_printf_fn()</a>, and <a class="el" href="printf_8c_source.html#l00314">p_ntoa()</a>.</p>

</div>
</div>
<a class="anchor" id="ab538bcf34e0347b5c0329666ab58d0e2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int p_ntoa </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="send_8c.html#aba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> *&#160;</td>
          <td class="paramname"><em>nump</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numsize</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>strmax</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>radix</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>width</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>prec</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="unionf__t.html">f_t</a>&#160;</td>
          <td class="paramname"><em>f</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convert number an base 2 .. 16 to ASCII with optional sign Notes: 1) Numbers can be any number of digits long - limited only by memory available To print negative numbers convert to positive before calling this function and set f.b.neg 2) Warning: as with printf width and prec are only minimum sizes - results can be bigger We assume all numbers are positive: </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">nump</td><td>number pointer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">numsize</td><td>number size in bytes </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">*str</td><td>string result </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">strmax</td><td>strmaximum length of string result </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">radix</td><td>Radix may be 2 .. 16 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">width</td><td>Width of result padded if needed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">prec</td><td>minumum number of digits, zero padded if needed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">f</td><td>flags f.b.left justify left f.b.plus display + for positive number, - for negative numbers f.b.space display ' ' for positive, - for negative f.b.zero pad with zeros if needed f.b.alt Alternate display form - work in progress f.b.width Width of result - pad if required f.b.prec Zero padd to prec if sepcified f.b.neg Sign of number is negative </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="printf_8c_source.html#l00314">314</a> of file <a class="el" href="printf_8c_source.html">printf.c</a>.</p>

<p>Referenced by <a class="el" href="printf_8c_source.html#l00741">_printf_fn()</a>.</p>

</div>
</div>
<a class="anchor" id="ab454b0d961c8dc93406cc75379c8a1f5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int pch </td>
          <td>(</td>
          <td class="paramtype">char&#160;</td>
          <td class="paramname"><em>ch</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Put character in buffer with limits. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">str</td><td>string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">max</td><td>maximum number of characters plus EOS  init_p_ch </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>

<p>Definition at line <a class="el" href="printf_8c_source.html#l00237">237</a> of file <a class="el" href="printf_8c_source.html">printf.c</a>.</p>

<p>Referenced by <a class="el" href="printf_8c_source.html#l00314">p_ntoa()</a>.</p>

</div>
</div>
<a class="anchor" id="a569e22c563b1ffd2dd24e34362a7c28f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int pch_ind </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Return current index of character buffer with limits. </p>
<dl class="section return"><dt>Returns</dt><dd>Buffer index </dd></dl>

<p>Definition at line <a class="el" href="printf_8c_source.html#l00250">250</a> of file <a class="el" href="printf_8c_source.html">printf.c</a>.</p>

<p>Referenced by <a class="el" href="printf_8c_source.html#l00314">p_ntoa()</a>.</p>

</div>
</div>
<a class="anchor" id="ab10e941ecf6d7512649e377e97d28fac"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void pch_init </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>max</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize character buffer with limits. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">str</td><td>string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">max</td><td>maximum number of characters plus EOS </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<p>base of string to write to</p>
<p>current string index</p>
<p>maximum string size including EOS </p>

<p>Definition at line <a class="el" href="printf_8c_source.html#l00222">222</a> of file <a class="el" href="printf_8c_source.html">printf.c</a>.</p>

<p>Referenced by <a class="el" href="printf_8c_source.html#l00314">p_ntoa()</a>.</p>

</div>
</div>
<a class="anchor" id="a5769700e455a65d011d96917f3f5ba36"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int pch_max_ind </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Return maximum valid index for character buffer. </p>
<dl class="section return"><dt>Returns</dt><dd>Buffer index </dd></dl>

<p>Definition at line <a class="el" href="printf_8c_source.html#l00258">258</a> of file <a class="el" href="printf_8c_source.html">printf.c</a>.</p>

</div>
</div>
<a class="anchor" id="a9c08c55e823a7532f2344a77ef296b4e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void print_flags </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionf__t.html">f_t</a>&#160;</td>
          <td class="paramname"><em>f</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>print flags set in t_t structure </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">f</td><td><a class="el" href="unionf__t.html" title="format specifier flags ">f_t</a> flags structure </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>

<p>Definition at line <a class="el" href="printf_8c_source.html#l00270">270</a> of file <a class="el" href="printf_8c_source.html">printf.c</a>.</p>

</div>
</div>
<a class="anchor" id="ad6078f8da2d30ecaef99e0c2d250c0c8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int printf </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>format</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="user__task_8c_source.html#l00057">abort()</a>, <a class="el" href="web_8c_source.html#l01298">arg_name()</a>, <a class="el" href="web_8c_source.html#l01346">arg_value()</a>, <a class="el" href="buffer_8c_source.html#l00044">buffer_read_open()</a>, <a class="el" href="cal__dex_8c_source.html#l00126">cal_dex_dump_hex()</a>, <a class="el" href="system_8c_source.html#l00069">calloc()</a>, <a class="el" href="posix__tests_8c_source.html#l00259">cat()</a>, <a class="el" href="timer_8c_source.html#l00200">clock_elapsed_end()</a>, <a class="el" href="posix__tests_8c_source.html#l00302">copy()</a>, <a class="el" href="cordic_8c_source.html#l00144">cordic_quad()</a>, <a class="el" href="web_8c_source.html#l00669">create_connection()</a>, <a class="el" href="web_8c_source.html#l00715">delete_connection()</a>, <a class="el" href="matrix_8c_source.html#l00212">DeleteRowCol()</a>, <a class="el" href="matrix_8c_source.html#l00350">Determinant()</a>, <a class="el" href="time_8c_source.html#l01227">display_clock()</a>, <a class="el" href="web_8c_source.html#l00470">display_ipv4()</a>, <a class="el" href="timer_8c_source.html#l00167">display_ts()</a>, <a class="el" href="posix_8c_source.html#l01260">dump_stat()</a>, <a class="el" href="fatfs__sup_8c_source.html#l00335">fatfs_filinfo_list()</a>, <a class="el" href="fatfs__tests_8c_source.html#l00046">fatfs_help()</a>, <a class="el" href="fatfs__tests_8c_source.html#l00313">fatfs_ls()</a>, <a class="el" href="fatfs__sup_8c_source.html#l00268">fatfs_status()</a>, <a class="el" href="fatfs__tests_8c_source.html#l00101">fatfs_tests()</a>, <a class="el" href="posix_8c_source.html#l00216">fgetc()</a>, <a class="el" href="web_8c_source.html#l00590">find_connection()</a>, <a class="el" href="font_8c_source.html#l00094">font_attr()</a>, <a class="el" href="posix_8c_source.html#l00278">fputc()</a>, <a class="el" href="system_8c_source.html#l00087">free()</a>, <a class="el" href="posix__tests_8c_source.html#l00363">hexdump()</a>, <a class="el" href="web_8c_source.html#l00853">html_msg()</a>, <a class="el" href="web_8c_source.html#l01030">html_status()</a>, <a class="el" href="web_8c_source.html#l01422">http_value()</a>, <a class="el" href="user__task_8c_source.html#l00149">init_done()</a>, <a class="el" href="timer_8c_source.html#l00293">init_timers()</a>, <a class="el" href="time_8c_source.html#l01178">initialize_clock()</a>, <a class="el" href="matrix_8c_source.html#l00399">Invert()</a>, <a class="el" href="web_8c_source.html#l00384">led_off()</a>, <a class="el" href="web_8c_source.html#l00374">led_on()</a>, <a class="el" href="posix__tests_8c_source.html#l00600">logfile()</a>, <a class="el" href="user__main_8c_source.html#l00533">loop()</a>, <a class="el" href="user__task_8c_source.html#l00137">loop_task()</a>, <a class="el" href="posix__tests_8c_source.html#l00517">ls()</a>, <a class="el" href="posix__tests_8c_source.html#l00465">ls_info()</a>, <a class="el" href="posix_8c_source.html#l00617">lseek()</a>, <a class="el" href="cordic2c_8c_source.html#l00317">main()</a>, <a class="el" href="system_8c_source.html#l00051">malloc()</a>, <a class="el" href="matrix_8c_source.html#l00048">MatAlloc()</a>, <a class="el" href="stringsup_8c_source.html#l00471">MATCHARGS()</a>, <a class="el" href="matrix_8c_source.html#l00116">MatFree()</a>, <a class="el" href="matrix_8c_source.html#l00490">MatMul()</a>, <a class="el" href="matrix_8c_source.html#l00187">MatPrint()</a>, <a class="el" href="matrix_8c_source.html#l00527">MatRead()</a>, <a class="el" href="matrix_8c_source.html#l00605">MatWrite()</a>, <a class="el" href="posix_8c_source.html#l01922">mkfs()</a>, <a class="el" href="mmc__hal_8c_source.html#l00208">mmc_init()</a>, <a class="el" href="mmc__hal_8c_source.html#l00079">mmc_install_timer()</a>, <a class="el" href="fatfs__tests_8c_source.html#l00271">mmc_test()</a>, <a class="el" href="mmc__hal_8c_source.html#l00172">mmc_test_timeout()</a>, <a class="el" href="user__main_8c_source.html#l00166">ms_init()</a>, <a class="el" href="web_8c_source.html#l01247">next_arg()</a>, <a class="el" href="time_8c_source.html#l00654">normalize()</a>, <a class="el" href="user__main_8c_source.html#l00176">ntp_setup()</a>, <a class="el" href="web_8c_source.html#l01535">parse_http_request()</a>, <a class="el" href="posix_8c_source.html#l01814">perror()</a>, <a class="el" href="posix__tests_8c_source.html#l00046">posix_help()</a>, <a class="el" href="posix__tests_8c_source.html#l00084">posix_tests()</a>, <a class="el" href="time_8c_source.html#l01158">print_dst()</a>, <a class="el" href="time_8c_source.html#l01166">print_dst_gmt()</a>, <a class="el" href="printf_8c_source.html#l00270">print_flags()</a>, <a class="el" href="system_8c_source.html#l00113">PrintRam()</a>, <a class="el" href="cordic2c_8c_source.html#l00200">PrintXYZ()</a>, <a class="el" href="web_8c_source.html#l01116">process_args()</a>, <a class="el" href="fatfs__sup_8c_source.html#l00145">put_rc()</a>, <a class="el" href="rtc_8c_source.html#l00121">rtc_init()</a>, <a class="el" href="rtc_8c_source.html#l00238">rtc_read()</a>, <a class="el" href="rtc_8c_source.html#l00189">rtc_write()</a>, <a class="el" href="web_8c_source.html#l00526">rwbuf_create()</a>, <a class="el" href="system_8c_source.html#l00128">safecalloc()</a>, <a class="el" href="system_8c_source.html#l00165">safefree()</a>, <a class="el" href="mmc_8c_source.html#l00202">select()</a>, <a class="el" href="send_8c_source.html#l00087">send_message()</a>, <a class="el" href="stringsup_8c_source.html#l00032">sep()</a>, <a class="el" href="server_8c_source.html#l00100">servertest_setup()</a>, <a class="el" href="timer_8c_source.html#l00060">set_timers()</a>, <a class="el" href="time_8c_source.html#l00901">setdate()</a>, <a class="el" href="time_8c_source.html#l00919">setdate_r()</a>, <a class="el" href="user__main_8c_source.html#l00971">setup()</a>, <a class="el" href="network_8c_source.html#l00165">setup_networking()</a>, <a class="el" href="printf_8c_source.html#l01164">snprintf()</a>, <a class="el" href="hal_8c_source.html#l00355">spi_begin()</a>, <a class="el" href="hal_8c_source.html#l00388">spi_end()</a>, <a class="el" href="posix__tests_8c_source.html#l00626">sum()</a>, <a class="el" href="web_8c_source.html#l00400">tcp_accept()</a>, <a class="el" href="user__main_8c_source.html#l00783">test_types()</a>, <a class="el" href="posix__tests_8c_source.html#l00435">testpage()</a>, <a class="el" href="ili9341_8c_source.html#l00510">tft_FillPolyLine()</a>, <a class="el" href="ili9341_8c_source.html#l00416">tft_floodline()</a>, <a class="el" href="ili9341_8c_source.html#l00380">tft_push_xy()</a>, <a class="el" href="timetests_8c_source.html#l00099">timetests()</a>, <a class="el" href="time_8c_source.html#l00552">tm2epoch()</a>, <a class="el" href="posix__tests_8c_source.html#l00661">upload()</a>, <a class="el" href="bdffont2c_8c_source.html#l00057">usage()</a>, <a class="el" href="user__main_8c_source.html#l00592">user_help()</a>, <a class="el" href="user__task_8c_source.html#l00160">user_init()</a>, <a class="el" href="user__main_8c_source.html#l00274">user_tasks()</a>, <a class="el" href="user__main_8c_source.html#l00631">user_tests()</a>, <a class="el" href="web_8c_source.html#l00195">wait_send()</a>, <a class="el" href="web_8c_source.html#l01928">web_data_connect_callback()</a>, <a class="el" href="web_8c_source.html#l01854">web_data_disconnect_callback()</a>, <a class="el" href="web_8c_source.html#l01895">web_data_error_callback()</a>, <a class="el" href="web_8c_source.html#l01735">web_data_receive_callback()</a>, <a class="el" href="web_8c_source.html#l01810">web_data_sent_callback()</a>, <a class="el" href="web_8c_source.html#l00182">web_sep()</a>, <a class="el" href="network_8c_source.html#l00080">wifi_event_cb()</a>, and <a class="el" href="web_8c_source.html#l00266">write_buffer()</a>.</p>

</div>
</div>
<a class="anchor" id="af4de2514b7778805db3815e8dd6cf09a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int putchar </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>c</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>put a character to stdout See <a class="el" href="posix_8c.html#ab814cff71bcbcc3a72a6c399e5084573" title="Device open functions. ">fdevopen()</a> sets stream-&gt;put get for TTY devices </p>
<ul>
<li>man page putchar (3).</li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">stream</td><td>POSIX stream pointer.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>character. </dd></dl>

<p>Definition at line <a class="el" href="posix_8c_source.html#l00351">351</a> of file <a class="el" href="posix_8c_source.html">posix.c</a>.</p>

<p>Referenced by <a class="el" href="fatfs__tests_8c_source.html#l00313">fatfs_ls()</a>, <a class="el" href="posix__tests_8c_source.html#l00363">hexdump()</a>, <a class="el" href="printf_8c_source.html#l01164">snprintf()</a>, and <a class="el" href="web_8c_source.html#l00266">write_buffer()</a>.</p>

</div>
</div>
<a class="anchor" id="a00b9d97be21e4f3f5df1019a803c05a6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void <a class="el" href="mmc__hal_8h.html#a399da2caab82ec1bb3d5a8fbc5306768">WEAK_ATR</a> reverse </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>str</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reverse a string in place Example: abcdef -&gt; fedcba. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">str</td><td>string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>string length </dd></dl>

<p>Definition at line <a class="el" href="stringsup_8c_source.html#l00231">231</a> of file <a class="el" href="stringsup_8c_source.html">stringsup.c</a>.</p>

<p>Referenced by <a class="el" href="printf_8c_source.html#l00139">bin2num()</a>.</p>

</div>
</div>
<a class="anchor" id="a52658cd34151fad98aa1294a2acafa02"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> double scale10 </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>num</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>exp</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="mathio_8c_source.html#l00295">atol()</a>.</p>

</div>
</div>
<a class="anchor" id="a278630a290b34d009b2e3ad7bf1fc996"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int snprintf </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="cpu_8h.html#aea0c7eab1ce1eebb4e879ef4e23c16ee">size_t</a>&#160;</td>
          <td class="paramname"><em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>format</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>snprintf function </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">str</td><td>string buffer for result </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>maximum length of converted string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>printf forat string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">...</td><td>list of arguments </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>string size </dd></dl>

<p>Definition at line <a class="el" href="printf_8c_source.html#l01164">1164</a> of file <a class="el" href="printf_8c_source.html">printf.c</a>.</p>

</div>
</div>
<a class="anchor" id="a79c7a2e931845b0fb6b2fa6d63939de4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sscanf </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>strp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="earth2wireframe_8c_source.html#l00077">main()</a>, <a class="el" href="matrix_8c_source.html#l00527">MatRead()</a>, <a class="el" href="bdffontutil_8c_source.html#l00790">ReadBdf()</a>, and <a class="el" href="time_8c_source.html#l00919">setdate_r()</a>.</p>

</div>
</div>
<a class="anchor" id="a895ea3a2f9901e4c962806cc15271339"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> <a class="el" href="cpu_8h.html#aea0c7eab1ce1eebb4e879ef4e23c16ee">size_t</a> <a class="el" href="mmc__hal_8h.html#a399da2caab82ec1bb3d5a8fbc5306768">WEAK_ATR</a> strlen </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>str</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>String Length. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">str</td><td>string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>string length </dd></dl>

<p>Definition at line <a class="el" href="stringsup_8c_source.html#l00146">146</a> of file <a class="el" href="stringsup_8c_source.html">stringsup.c</a>.</p>

<p>Referenced by <a class="el" href="printf_8c_source.html#l00741">_printf_fn()</a>, <a class="el" href="web_8c_source.html#l01298">arg_name()</a>, <a class="el" href="web_8c_source.html#l01346">arg_value()</a>, <a class="el" href="posix__tests_8c_source.html#l00259">cat()</a>, <a class="el" href="send_8c_source.html#l00026">escape()</a>, <a class="el" href="fatfs__tests_8c_source.html#l00313">fatfs_ls()</a>, <a class="el" href="fatfs__sup_8c_source.html#l00194">fatfs_scan_files()</a>, <a class="el" href="cordic2c_8c_source.html#l00128">get_date()</a>, <a class="el" href="web_8c_source.html#l00853">html_msg()</a>, <a class="el" href="posix__tests_8c_source.html#l00600">logfile()</a>, <a class="el" href="posix__tests_8c_source.html#l00517">ls()</a>, <a class="el" href="earth2wireframe_8c_source.html#l00077">main()</a>, <a class="el" href="stringsup_8c_source.html#l00455">MATCH()</a>, <a class="el" href="web_8c_source.html#l01077">match_headers()</a>, <a class="el" href="stringsup_8c_source.html#l00511">MATCH_LEN()</a>, <a class="el" href="bdffontutil_8c_source.html#l00279">match_token()</a>, <a class="el" href="stringsup_8c_source.html#l00493">MATCHI()</a>, <a class="el" href="stringsup_8c_source.html#l00537">MATCHI_LEN()</a>, <a class="el" href="posix_8c_source.html#l01323">mctime()</a>, <a class="el" href="web_8c_source.html#l01247">next_arg()</a>, <a class="el" href="printf_8c_source.html#l00314">p_ntoa()</a>, <a class="el" href="web_8c_source.html#l01535">parse_http_request()</a>, <a class="el" href="web_8c_source.html#l01116">process_args()</a>, <a class="el" href="bdffontutil_8c_source.html#l00790">ReadBdf()</a>, <a class="el" href="posix_8c_source.html#l01755">readdir()</a>, <a class="el" href="stringsup_8c_source.html#l00231">reverse()</a>, <a class="el" href="send_8c_source.html#l00087">send_message()</a>, <a class="el" href="printf_8c_source.html#l01164">snprintf()</a>, <a class="el" href="bdffontutil_8c_source.html#l00093">stralloc()</a>, <a class="el" href="stringsup_8c_source.html#l00671">token()</a>, <a class="el" href="bdffontutil_8c_source.html#l00177">trim_tail()</a>, <a class="el" href="posix__tests_8c_source.html#l00661">upload()</a>, and <a class="el" href="printf_8c_source.html#l01135">vsnprintf()</a>.</p>

</div>
</div>
<a class="anchor" id="a581d4eb5e2c88dd6a011ed595bf413f8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> double strtod </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>nptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>endptr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="mathio_8c_source.html#l00295">atol()</a>, and <a class="el" href="matrix_8c_source.html#l00527">MatRead()</a>.</p>

</div>
</div>
<a class="anchor" id="ae7a25f0631dd53c026fd8636e8bcb42e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> long strtol </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>nptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>endptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>base</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convert ASCII string to number in a given base. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">nptr</td><td>string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">endptr</td><td>pointer to string pointer return value </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">base</td><td>radix </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>long value </dd></dl>

<p>Definition at line <a class="el" href="mathio_8c_source.html#l00136">136</a> of file <a class="el" href="mathio_8c_source.html">mathio.c</a>.</p>

<p>Referenced by <a class="el" href="mathio_8c_source.html#l00079">atoh()</a>, <a class="el" href="mathio_8c_source.html#l00281">atoi()</a>, <a class="el" href="mathio_8c_source.html#l00295">atol()</a>, <a class="el" href="mathio_8c_source.html#l00093">aton()</a>, <a class="el" href="stringsup_8c_source.html#l00706">get_value()</a>, <a class="el" href="testflash_8c_source.html#l00052">main()</a>, <a class="el" href="posix__tests_8c_source.html#l00084">posix_tests()</a>, and <a class="el" href="time_8c_source.html#l00919">setdate_r()</a>.</p>

</div>
</div>
<a class="anchor" id="a00a26430103adfe060136c98afc39cab"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> long long strtoll </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>nptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>endptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>base</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convert ASCII string to number in a given base. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">nptr</td><td>string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">endptr</td><td>pointer to string pointer return value </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">base</td><td>radix </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>long long </dd></dl>

<p>Definition at line <a class="el" href="mathio_8c_source.html#l00183">183</a> of file <a class="el" href="mathio_8c_source.html">mathio.c</a>.</p>

</div>
</div>
<a class="anchor" id="a25ac5a1dbdfa1d06d55448cd7b665d1d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void <a class="el" href="mmc__hal_8h.html#a399da2caab82ec1bb3d5a8fbc5306768">WEAK_ATR</a> strupper </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>str</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>UPPERCASE a string. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">str</td><td>string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>

<p>Definition at line <a class="el" href="stringsup_8c_source.html#l00253">253</a> of file <a class="el" href="stringsup_8c_source.html">stringsup.c</a>.</p>

<p>Referenced by <a class="el" href="printf_8c_source.html#l00741">_printf_fn()</a>.</p>

</div>
</div>
<a class="anchor" id="a7a6349b4ca3388a0cb82fc3d1d85a6b5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int vsnprintf </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="cpu_8h.html#aea0c7eab1ce1eebb4e879ef4e23c16ee">size_t</a>&#160;</td>
          <td class="paramname"><em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>format</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">va_list&#160;</td>
          <td class="paramname"><em>va</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>vsnprintf function </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">str</td><td>string buffer for result </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>maximum length of converted string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>printf forat string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">va</td><td>va_list list of arguments </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>string size </dd></dl>

<p>Definition at line <a class="el" href="printf_8c_source.html#l01135">1135</a> of file <a class="el" href="printf_8c_source.html">printf.c</a>.</p>

<p>Referenced by <a class="el" href="web_8c_source.html#l00853">html_msg()</a>, and <a class="el" href="printf_8c_source.html#l01164">snprintf()</a>.</p>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Jan 31 2018 21:22:17 for ESP8266 ILI9341 display support code with printf sources, wire-frame viewer and custom fonts by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.11
</small></address>
</body>
</html>
